GdkMirDisplay *display;
GDBusConnection *session;
- //g_printerr ("gdk_mir_display_open\n");
-
connection = mir_connect_sync (NULL, "GDK-Mir");
if (!connection)
return NULL;
static const gchar *
gdk_mir_display_get_name (GdkDisplay *display)
{
- //g_printerr ("gdk_mir_display_get_name\n");
return "Mir";
}
static GdkScreen *
gdk_mir_display_get_default_screen (GdkDisplay *display)
{
- //g_printerr ("gdk_mir_display_get_default_screen\n");
return GDK_MIR_DISPLAY (display)->screen;
}
static void
gdk_mir_display_beep (GdkDisplay *display)
{
- //g_printerr ("gdk_mir_display_beep\n");
/* No system level beep... */
}
static void
gdk_mir_display_sync (GdkDisplay *display)
{
- //g_printerr ("gdk_mir_display_sync\n");
}
static void
gdk_mir_display_flush (GdkDisplay *display)
{
- //g_printerr ("gdk_mir_display_flush\n");
}
static gboolean
gdk_mir_display_has_pending (GdkDisplay *display)
{
- //g_printerr ("gdk_mir_display_has_pending\n");
/* We don't need to poll for events - so nothing pending */
return FALSE;
}
static void
gdk_mir_display_queue_events (GdkDisplay *display)
{
- //g_printerr ("gdk_mir_display_queue_events\n");
/* We don't need to poll for events - so don't do anything*/
}
static void
gdk_mir_display_make_default (GdkDisplay *display)
{
- //g_printerr ("gdk_mir_display_make_default\n");
}
static GdkWindow *
gdk_mir_display_get_default_group (GdkDisplay *display)
{
- //g_printerr ("gdk_mir_display_get_default_group\n");
return NULL;
}
static gboolean
gdk_mir_display_supports_shapes (GdkDisplay *display)
{
- //g_printerr ("gdk_mir_display_supports_shapes\n");
/* Mir doesn't support shaped windows */
return FALSE;
}
static gboolean
gdk_mir_display_supports_input_shapes (GdkDisplay *display)
{
- //g_printerr ("gdk_mir_display_supports_input_shapes\n");
return FALSE;
}
static gboolean
gdk_mir_display_supports_clipboard_persistence (GdkDisplay *display)
{
- //g_printerr ("gdk_mir_display_supports_clipboard_persistence\n");
return FALSE;
}
static gboolean
gdk_mir_display_supports_cursor_alpha (GdkDisplay *display)
{
- //g_printerr ("gdk_mir_display_supports_cursor_alpha\n");
return FALSE;
}
static gboolean
gdk_mir_display_supports_cursor_color (GdkDisplay *display)
{
- //g_printerr ("gdk_mir_display_supports_cursor_color\n");
return FALSE;
}
static gboolean
gdk_mir_display_supports_selection_notification (GdkDisplay *display)
{
- //g_printerr ("gdk_mir_display_supports_selection_notification\n");
return FALSE;
}
gdk_mir_display_request_selection_notification (GdkDisplay *display,
GdkAtom selection)
{
- //g_printerr ("gdk_mir_display_request_selection_notification\n");
return FALSE;
}
const GdkAtom *targets,
gint n_targets)
{
- //g_printerr ("gdk_mir_display_store_clipboard\n");
}
static void
guint *width,
guint *height)
{
- //g_printerr ("gdk_mir_display_get_default_cursor_size\n");
*width = *height = 32; // FIXME: Random value
}
guint *width,
guint *height)
{
- //g_printerr ("gdk_mir_display_get_maximal_cursor_size\n");
*width = *height = 32; // FIXME: Random value
}
gdouble x,
gdouble y)
{
- //g_printerr ("gdk_mir_display_get_cursor_for_surface (%f, %f)\n", x, y);
return NULL;
}
static GdkAppLaunchContext *
gdk_mir_display_get_app_launch_context (GdkDisplay *display)
{
- //g_printerr ("gdk_mir_display_get_app_launch_context\n");
return NULL;
}
static gulong
gdk_mir_display_get_next_serial (GdkDisplay *display)
{
- //g_printerr ("gdk_mir_display_get_next_serial\n");
return GDK_MIR_DISPLAY (display)->serial++;
}
gdk_mir_display_notify_startup_complete (GdkDisplay *display,
const gchar *startup_id)
{
- //g_printerr ("gdk_mir_display_notify_startup_complete\n");
}
static void
GdkEventMask event_mask,
GdkWindowAttr *attributes)
{
- //g_printerr ("gdk_mir_display_create_window_impl");
- //g_printerr (" window=%p", window);
- //g_printerr (" location=(%d, %d)", window->x, window->y);
- //g_printerr (" size=(%d, %d)", window->width, window->height);
- //g_printerr ("\n");
-
if (attributes->wclass == GDK_INPUT_OUTPUT)
{
window->impl = _gdk_mir_window_impl_new (display, window);
static GdkKeymap *
gdk_mir_display_get_keymap (GdkDisplay *display)
{
- //g_printerr ("gdk_mir_display_get_keymap\n");
return GDK_MIR_DISPLAY (display)->keymap;
}
static void
gdk_mir_display_push_error_trap (GdkDisplay *display)
{
- //g_printerr ("gdk_mir_display_push_error_trap\n");
}
static gint
gdk_mir_display_pop_error_trap (GdkDisplay *display,
gboolean ignored)
{
- //g_printerr ("gdk_mir_display_pop_error_trap\n");
return 0;
}
gdk_mir_display_get_selection_owner (GdkDisplay *display,
GdkAtom selection)
{
- //g_printerr ("gdk_mir_display_get_selection_owner\n");
return NULL;
}
GdkAtom property,
guint32 time)
{
- //g_printerr ("gdk_mir_display_send_selection_notify\n");
}
static gint
gdk_mir_display_utf8_to_string_target (GdkDisplay *display,
const gchar *str)
{
- //g_printerr ("gdk_mir_display_utf8_to_string_target\n");
return NULL;
}
static cairo_surface_t *
gdk_mir_window_impl_ref_cairo_surface (GdkWindow *window)
{
- //g_printerr ("gdk_mir_window_impl_ref_cairo_surface window=%p\n", window);
GdkMirWindowImpl *impl = GDK_MIR_WINDOW_IMPL (window->impl);
MirGraphicsRegion region;
cairo_format_t pixel_format = CAIRO_FORMAT_ARGB32;
int width,
int height)
{
- //g_printerr ("gdk_mir_window_impl_create_similar_image_surface window=%p\n", window);
return cairo_image_surface_create (format, width, height);
}
GdkMirWindowImpl *impl = GDK_MIR_WINDOW_IMPL (window->impl);
cairo_surface_t *s;
- //g_printerr ("gdk_mir_window_impl_show window=%p\n", window);
-
impl->visible = TRUE;
set_window_state (impl, mir_window_state_restored);
static void
gdk_mir_window_impl_hide (GdkWindow *window)
{
- //g_printerr ("gdk_mir_window_impl_hide window=%p\n", window);
GdkMirWindowImpl *impl = GDK_MIR_WINDOW_IMPL (window->impl);
impl->cursor_inside = FALSE;
static void
gdk_mir_window_impl_withdraw (GdkWindow *window)
{
- //g_printerr ("gdk_mir_window_impl_withdraw window=%p\n", window);
GdkMirWindowImpl *impl = GDK_MIR_WINDOW_IMPL (window->impl);
impl->cursor_inside = FALSE;
static void
gdk_mir_window_impl_raise (GdkWindow *window)
{
- //g_printerr ("gdk_mir_window_impl_raise window=%p\n", window);
/* We don't support client window stacking */
}
static void
gdk_mir_window_impl_lower (GdkWindow *window)
{
- //g_printerr ("gdk_mir_window_impl_lower window=%p\n", window);
/* We don't support client window stacking */
}
GdkWindow *sibling,
gboolean above)
{
- //g_printerr ("gdk_mir_window_impl_restack_toplevel window=%p sibling=%p\n", window, sibling);
/* We don't support client window stacking */
}
gint width,
gint height)
{
- /*
- g_printerr ("gdk_mir_window_impl_move_resize");
- g_printerr (" window=%p", window);
- if (with_move)
- g_printerr (" location=%d,%d", x, y);
- if (width > 0)
- g_printerr (" size=%dx%dpx", width, height);
- g_printerr ("\n");
- */
GdkMirWindowImpl *impl = GDK_MIR_WINDOW_IMPL (window->impl);
/* If resize requested then rebuild window */
static GdkEventMask
gdk_mir_window_impl_get_events (GdkWindow *window)
{
- //g_printerr ("gdk_mir_window_impl_get_events window=%p\n", window);
return window->event_mask;
}
gdk_mir_window_impl_set_events (GdkWindow *window,
GdkEventMask event_mask)
{
- //g_printerr ("gdk_mir_window_impl_set_events window=%p\n", window);
/* We send all events and let GDK decide */
}
gint *width,
gint *height)
{
- //g_printerr ("gdk_mir_window_impl_get_geometry window=%p\n", window);
-
if (x)
*x = 0; // FIXME
if (y)
gint *root_x,
gint *root_y)
{
- //g_printerr ("gdk_mir_window_impl_get_root_coords window=%p\n", window);
-
if (root_x)
*root_x = x; // FIXME
if (root_y)
gdouble *y,
GdkModifierType *mask)
{
- //g_printerr ("gdk_mir_window_impl_get_device_state window=%p\n", window);
GdkWindow *child;
_gdk_device_query_state (device, window, NULL, &child, NULL, NULL, x, y, mask);
static gboolean
gdk_mir_window_impl_begin_paint (GdkWindow *window)
{
- //g_printerr ("gdk_mir_window_impl_begin_paint window=%p\n", window);
/* Indicate we are ready to be drawn onto directly? */
return FALSE;
}
gint offset_x,
gint offset_y)
{
- //g_printerr ("gdk_mir_window_impl_shape_combine_region window=%p\n", window);
}
static void
gint offset_x,
gint offset_y)
{
- // g_printerr ("gdk_mir_window_impl_input_shape_combine_region window=%p\n", window);
}
static void
gboolean recursing,
gboolean foreign_destroy)
{
- //g_printerr ("gdk_mir_window_impl_destroy window=%p\n", window);
GdkMirWindowImpl *impl = GDK_MIR_WINDOW_IMPL (window->impl);
impl->visible = FALSE;
static void
gdk_mir_window_impl_focus (GdkWindow *window,
- guint32 timestamp)
+ guint32 timestamp)
{
- //g_printerr ("gdk_mir_window_impl_focus window=%p\n", window);
}
static void
gdk_mir_window_impl_set_skip_taskbar_hint (GdkWindow *window,
gboolean skips_taskbar)
{
- //g_printerr ("gdk_mir_window_impl_set_skip_taskbar_hint window=%p\n", window);
}
static void
gdk_mir_window_impl_set_skip_pager_hint (GdkWindow *window,
gboolean skips_pager)
{
- //g_printerr ("gdk_mir_window_impl_set_skip_pager_hint window=%p\n", window);
}
static void
gdk_mir_window_impl_set_urgency_hint (GdkWindow *window,
gboolean urgent)
{
- //g_printerr ("gdk_mir_window_impl_set_urgency_hint window=%p\n", window);
}
static void
GdkMirWindowImpl *impl = GDK_MIR_WINDOW_IMPL (window->impl);
MirConnection *connection = gdk_mir_display_get_mir_connection (impl->display);
MirWindowSpec *spec;
- //g_printerr ("gdk_mir_window_impl_set_geometry_hints window=%p impl=%p\n", window, impl);
impl->geometry_hints = *geometry;
impl->geometry_mask = geom_mask;
GdkMirWindowImpl *impl = GDK_MIR_WINDOW_IMPL (window->impl);
MirConnection *connection = gdk_mir_display_get_mir_connection (impl->display);
MirWindowSpec *spec;
- //g_printerr ("gdk_mir_window_impl_set_title window=%p\n", window);
g_free (impl->title);
impl->title = g_strdup (title);
gdk_mir_window_impl_set_role (GdkWindow *window,
const gchar *role)
{
- //g_printerr ("gdk_mir_window_impl_set_role window=%p\n", window);
}
static void
gdk_mir_window_impl_set_startup_id (GdkWindow *window,
const gchar *startup_id)
{
- //g_printerr ("gdk_mir_window_impl_set_startup_id window=%p\n", window);
}
static void
gdk_mir_window_impl_set_transient_for (GdkWindow *window,
GdkWindow *parent)
{
- //g_printerr ("gdk_mir_window_impl_set_transient_for window=%p\n", window);
GdkMirWindowImpl *impl = GDK_MIR_WINDOW_IMPL (window->impl);
if (impl->transient_for == parent)
gdk_mir_window_impl_get_frame_extents (GdkWindow *window,
GdkRectangle *rect)
{
- //g_printerr ("gdk_mir_window_impl_get_frame_extents window=%p\n", window);
}
static void
gdk_mir_window_impl_set_accept_focus (GdkWindow *window,
gboolean accept_focus)
{
- //g_printerr ("gdk_mir_window_impl_set_accept_focus window=%p\n", window);
/* Mir clients cannot control focus */
}
gdk_mir_window_impl_set_focus_on_map (GdkWindow *window,
gboolean focus_on_map)
{
- //g_printerr ("gdk_mir_window_impl_set_focus_on_map window=%p\n", window);
/* Mir clients cannot control focus */
}
gdk_mir_window_impl_set_icon_list (GdkWindow *window,
GList *pixbufs)
{
- //g_printerr ("gdk_mir_window_impl_set_icon_list window=%p\n", window);
// ??
}
gdk_mir_window_impl_set_icon_name (GdkWindow *window,
const gchar *name)
{
- //g_printerr ("gdk_mir_window_impl_set_icon_name window=%p\n", window);
}
static void
gdk_mir_window_impl_iconify (GdkWindow *window)
{
- //g_printerr ("gdk_mir_window_impl_iconify window=%p\n", window);
/* We don't support iconification */
}
static void
gdk_mir_window_impl_deiconify (GdkWindow *window)
{
- //g_printerr ("gdk_mir_window_impl_deiconify window=%p\n", window);
/* We don't support iconification */
}
static void
gdk_mir_window_impl_stick (GdkWindow *window)
{
- //g_printerr ("gdk_mir_window_impl_stick window=%p\n", window);
/* We do not support stick/unstick in Mir */
}
static void
gdk_mir_window_impl_unstick (GdkWindow *window)
{
- //g_printerr ("gdk_mir_window_impl_unstick window=%p\n", window);
/* We do not support stick/unstick in Mir */
}
static void
gdk_mir_window_impl_maximize (GdkWindow *window)
{
- //g_printerr ("gdk_mir_window_impl_maximize window=%p\n", window);
set_window_state (GDK_MIR_WINDOW_IMPL (window->impl), mir_window_state_maximized);
}
static void
gdk_mir_window_impl_unmaximize (GdkWindow *window)
{
- //g_printerr ("gdk_mir_window_impl_unmaximize window=%p\n", window);
set_window_state (GDK_MIR_WINDOW_IMPL (window->impl), mir_window_state_restored);
}
static void
gdk_mir_window_impl_fullscreen (GdkWindow *window)
{
- //g_printerr ("gdk_mir_window_impl_fullscreen window=%p\n", window);
set_window_state (GDK_MIR_WINDOW_IMPL (window->impl), mir_window_state_fullscreen);
}
static void
gdk_mir_window_impl_apply_fullscreen_mode (GdkWindow *window)
{
- //g_printerr ("gdk_mir_window_impl_apply_fullscreen_mode window=%p\n", window);
}
static void
gdk_mir_window_impl_unfullscreen (GdkWindow *window)
{
- //g_printerr ("gdk_mir_window_impl_unfullscreen window=%p\n", window);
set_window_state (GDK_MIR_WINDOW_IMPL (window->impl), mir_window_state_restored);
}
gdk_mir_window_impl_set_keep_above (GdkWindow *window,
gboolean setting)
{
- //g_printerr ("gdk_mir_window_impl_set_keep_above window=%p\n", window);
/* We do not support keep above/below in Mir */
}
gdk_mir_window_impl_set_keep_below (GdkWindow *window,
gboolean setting)
{
- //g_printerr ("gdk_mir_window_impl_set_keep_below window=%p\n", window);
/* We do not support keep above/below in Mir */
}
static GdkWindow *
gdk_mir_window_impl_get_group (GdkWindow *window)
{
- //g_printerr ("gdk_mir_window_impl_get_group window=%p\n", window);
return NULL;
}
gdk_mir_window_impl_set_group (GdkWindow *window,
GdkWindow *leader)
{
- //g_printerr ("gdk_mir_window_impl_set_group window=%p\n", window);
}
static void
gdk_mir_window_impl_set_decorations (GdkWindow *window,
GdkWMDecoration decorations)
{
- //g_printerr ("gdk_mir_window_impl_set_decorations window=%p decorations=%d\n", window, decorations);
}
static gboolean
gdk_mir_window_impl_get_decorations (GdkWindow *window,
GdkWMDecoration *decorations)
{
- //g_printerr ("gdk_mir_window_impl_get_decorations window=%p\n", window);
return FALSE;
}
gdk_mir_window_impl_set_functions (GdkWindow *window,
GdkWMFunction functions)
{
- //g_printerr ("gdk_mir_window_impl_set_functions window=%p\n", window);
}
static void
gint root_y,
guint32 timestamp)
{
- //g_printerr ("gdk_mir_window_impl_begin_resize_drag window=%p\n", window);
}
static void
gint root_y,
guint32 timestamp)
{
- //g_printerr ("gdk_mir_window_impl_begin_move_drag window=%p\n", window);
}
static void
gdk_mir_window_impl_enable_synchronized_configure (GdkWindow *window)
{
- //g_printerr ("gdk_mir_window_impl_enable_synchronized_configure window=%p\n", window);
}
static void
gdk_mir_window_impl_configure_finished (GdkWindow *window)
{
- //g_printerr ("gdk_mir_window_impl_configure_finished window=%p\n", window);
}
static void
gdk_mir_window_impl_set_opacity (GdkWindow *window,
gdouble opacity)
{
- //g_printerr ("gdk_mir_window_impl_set_opacity window=%p\n", window);
// FIXME
}
static void
gdk_mir_window_impl_destroy_notify (GdkWindow *window)
{
- //g_printerr ("gdk_mir_window_impl_destroy_notify window=%p\n", window);
}
static GdkDragProtocol
gdk_mir_window_impl_get_drag_protocol (GdkWindow *window,
GdkWindow **target)
{
- //g_printerr ("gdk_mir_window_impl_get_drag_protocol window=%p\n", window);
return 0;
}
static void
gdk_mir_window_impl_register_dnd (GdkWindow *window)
{
- //g_printerr ("gdk_mir_window_impl_register_dnd window=%p\n", window);
}
static GdkDragContext *
gint x_root,
gint y_root)
{
- //g_printerr ("gdk_mir_window_impl_drag_begin window=%p\n", window);
return NULL;
}
gdk_mir_window_impl_process_updates_recurse (GdkWindow *window,
cairo_region_t *region)
{
- //g_printerr ("gdk_mir_window_impl_process_updates_recurse window=%p\n", window);
cairo_rectangle_int_t rectangle;
/* We redraw the whole region, but we should track the buffers and only redraw what has changed since we sent this buffer */
static gint
gdk_mir_window_impl_get_scale_factor (GdkWindow *window)
{
- //g_printerr ("gdk_mir_window_impl_get_scale_factor window=%p\n", window);
GdkMirWindowImpl *impl = GDK_MIR_WINDOW_IMPL (window->impl);
return impl->output_scale;
}
gdk_mir_window_impl_set_opaque_region (GdkWindow *window,
cairo_region_t *region)
{
- //g_printerr ("gdk_mir_window_impl_set_opaque_region window=%p\n", window);
/* FIXME: An optimisation to tell the compositor which regions of the window are fully transparent */
}
gint top,
gint bottom)
{
- // g_printerr ("gdk_mir_window_impl_set_shadow_width window=%p\n", window);
}
static gboolean
GdkRectangle area = {0, 0, window->width, window->height};
cairo_region_t *region;
gint new_scale = (gint) round (scale);
- // g_printerr ("_gdk_mir_window_set_scale impl=%p\n", impl);
if (impl->output_scale != new_scale)
{